function _classCallCheck(instance, Constructor) {
    if (!(instance instanceof Constructor)) {
        throw new TypeError("Cannot call a class as a function");
    }
}
function _defineProperties(target, props) {
    for(var i = 0; i < props.length; i++){
        var descriptor = props[i];
        descriptor.enumerable = descriptor.enumerable || false;
        descriptor.configurable = true;
        if ("value" in descriptor) descriptor.writable = true;
        Object.defineProperty(target, descriptor.key, descriptor);
    }
}
function _createClass(Constructor, protoProps, staticProps) {
    if (protoProps) _defineProperties(Constructor.prototype, protoProps);
    if (staticProps) _defineProperties(Constructor, staticProps);
    return Constructor;
}
var A = // object types are identical structurally
/*#__PURE__*/ function() {
    "use strict";
    function A() {
        _classCallCheck(this, A);
    }
    _createClass(A, [
        {
            key: "foo",
            value: function foo(x) {
                return null;
            }
        }
    ]);
    return A;
}();
var B = /*#__PURE__*/ function() {
    "use strict";
    function B() {
        _classCallCheck(this, B);
    }
    _createClass(B, [
        {
            key: "foo",
            value: function foo(x) {
                return null;
            }
        }
    ]);
    return B;
}();
var C = /*#__PURE__*/ function() {
    "use strict";
    function C() {
        _classCallCheck(this, C);
    }
    _createClass(C, [
        {
            key: "foo",
            value: function foo(x) {
                return null;
            }
        }
    ]);
    return C;
}();
var a;
var b = {
    foo: function(x) {
        return '';
    }
};
function foo1(x) {
}
function foo1b(x) {
}
function foo1c(x) {
}
function foo2(x) {
}
function foo3(x) {
}
function foo4(x) {
}
function foo5(x) {
}
function foo5b(x) {
}
function foo6(x) {
}
function foo7(x) {
}
function foo8(x) {
}
function foo9(x) {
}
function foo10(x) {
}
function foo11(x) {
}
function foo12(x) {
}
function foo12b(x) {
}
function foo13(x) {
}
function foo14(x) {
}
function foo15(x) {
}
